Skip to content

feat(server): transport sandbox lifecycle hooks - #1589

Merged
Pangjiping merged 7 commits into
opensandbox-group:mainfrom
jianpingpei:feature/osep-0020-lifecycle-server
Aug 24, 2026
Merged

feat(server): transport sandbox lifecycle hooks#1589
Pangjiping merged 7 commits into
opensandbox-group:mainfrom
jianpingpei:feature/osep-0020-lifecycle-server

Conversation

@jianpingpei

Copy link
Copy Markdown
Contributor

Summary

  • Add the standard CreateSandboxRequest.lifecycle schema for the optional preStart and periodic hooks.
  • Validate reserved transport, duplicate periodic names, and unsupported pool allocation combinations.
  • Serialize lifecycle configuration into the reserved OPEN_SANDBOX_LIFECYCLE environment variable for Kubernetes workloads so execd can consume it.
  • Explicitly reject lifecycle requests on the Docker provider; Docker hook execution remains out of scope.

This is the Server part of OSEP-0020 (#1542). It complements the execd implementation in #1587 and the API Spec/SDK changes in #1588. PATCH and other lifecycle hooks are intentionally out of scope.

Testing

  • Not run (explain why)
  • Unit tests
  • Integration tests
  • e2e / manual verification

Validated:

  • Server Ruff checks passed
  • Server full test suite: 1506 passed

Breaking Changes

  • None
  • Yes (describe impact and migration path)

Checklist

  • Linked Issue or clearly described motivation
  • Added/updated docs (if needed)
  • Added/updated tests (if needed)
  • Security impact considered
  • Backward compatibility considered

@github-actions github-actions Bot added component/server size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Aug 20, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f0ba38d997

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread server/opensandbox_server/api/schema.py
Comment thread server/opensandbox_server/api/schema.py Outdated
@Pangjiping Pangjiping self-assigned this Aug 24, 2026
@github-actions github-actions Bot added component/execd documentation Improvements or additions to documentation size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Aug 24, 2026

@Pangjiping Pangjiping left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Pangjiping
Pangjiping merged commit 380dcba into opensandbox-group:main Aug 24, 2026
55 of 56 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component/execd component/server documentation Improvements or additions to documentation size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants